//
//  ZtbContentModel.swift
//
//  Created by 邱仙凯 on 2019/12/31
//  Copyright (c) . All rights reserved.
//

import Foundation
import ObjectMapper

public class ZyaZtbContentModel: BaseFormModel {
    
    // MARK: Declaration for string constants to be used to decode and also serialize.
    private struct SerializationKeys {
        static let ztbMark = "ztb_mark"
        static let zUnitNm = "z_unit_nm"
        static let zPigType = "z_pig_type"
        static let zUse = "z_use"
        static let zAddress = "z_address"
        static let zBatchNo = "z_batch_no"
        static let zTitle = "z_title"
        static let zCreateTm = "z_create_tm"
        static let zEndDate = "z_end_date"
        static let zTbNo = "z_tb_no"
        static let zSrcZcNm = "z_src_zc_nm"
        static let zbFile = "zb_file"
        static let tbInfo = "tb_info"
        static let zTenderCompany = "z_tender_company"
        static let zProvince = "z_province"
        static let zCusType = "z_cus_type"
        static let zRecordNo = "z_record_no"
        static let idKey = "id_key"
        static let ztbFileUrl = "ztb_file_url"
        static let zWinCompany = "z_win_company"
        static let zType = "z_type" // 0 买方  1 卖方
        static let zOrgNm = "z_org_nm"
        static let zTbId = "z_tb_id"
        static let zZbNo = "z_zb_no"
        static let zOrgId = "z_org_id"
        static let zDate = "z_date"
        static let zZcId = "z_zc_id"
        static let zZcNm = "z_zc_nm"
        static let zGoodsNm = "z_goods_nm"
        static let zTel = "z_tel"
        static let zStaffNm = "z_staff_nm"
        static let zContent = "z_content"
        static let zPrice = "z_price"
        static let zZbId = "z_zb_id"
        static let zStaffId = "z_staff_id"
        static let zRecordType = "z_record_type"
        static let zSrcZcId = "z_src_zc_id"
        static let zAuditMark = "z_audit_mark"
        static let zStatus = "z_status"
        static let zZbStatus = "z_zb_status"
        static let zCity = "z_city"
        static let zMainUrl = "z_main_url"
        static let zSrcType = "z_src_type"
        static let zBeginDate = "z_begin_date"
        static let zName = "z_name"
        static let zBatchId = "z_batch_id"
        static let zNum = "z_num"
        static let zRange = "z_range"
        static let zZq = "z_zq"
        static let zDepositMoney = "z_deposit_money"
        static let zDtradeType = "z_dtrade_type"
        static let zMaxBidNo = "z_max_bid_no"
        static let zRestBidNo = "z_rest_bid_no"
        static let zTbCompany = "z_tb_company"
        static let zZbStaffNm = "z_zb_staff_nm"
        static let zZbName = "z_zb_name"
        static let zZbTel = "z_zb_tel"
        static let zPriceRank = "z_price_rank"// todo999
        static let depositInfo = "deposit_info"
        static let zZbPrice = "z_zb_price"
        static let zRecordId = "z_record_id"
        static let zInvited = "z_invited"
        static let zDeptNm = "z_dept_nm"
        static let zAutoZb = "z_auto_zb"
        static let zZbContent = "z_zb_content"
        static let zZbProvince = "z_zb_province"
        static let zZbCity = "z_zb_city"
        static let zZbAddress = "z_zb_address"
        static let jpInfo = "jp_info"
        static let zBidId = "z_bid_id"
        static let zBidCount = "z_bid_count"
        static let sid = "sid"
        static let bidInfo = "bid_info"
        static let zLeastNum = "z_least_num"
        static let zBidNum = "z_bid_num"
        static let zDateEnd = "z_date_end"
        static let providerNm = "provider_nm"
        static let tag = "tag"
        static let zMinPrice = "z_min_price"
        static let zMaxPrice = "z_max_price"
        static let zRemainTry = "z_remain_try"
        static let zShipAddress = "z_ship_address"
        static let zbInfo = "zb_info"
        static let sendCity = "send_city"
        static let zGoodsName = "z_goods_name"
        static let zGeneralName = "z_general_name"
        static let zMainElement = "z_main_element"
        static let zSpecification = "z_specification"
        static let zValuationUnit = "z_valuation_unit"
        static let zApprovalNum = "z_approval_num"
        static let zExpirationTimes = "z_expire_times"
        static let zManufacturer = "z_manufacturer"
        static let zSupplier = "z_supplier"
        static let zProductInstructions = "z_product_instructions"
        static let zExecuteTm = "z_execute_tm"
        static let carInfo = "carInfo"
        static let zContractStateNm = "z_contract_state_nm"
        static let zQuoteStateNm = "z_quote_state_nm"
        static let zButtonState = "z_button_state"
        static let zLeastUnitNm = "z_least_unit_nm"
        static let zMyPrice = "z_my_price"
        static let zMyPriceRank = "z_my_price_rank"
        static let zRank = "z_rank"
        static let zAvgWeight = "z_avg_weight"
        static let zbInfoAll = "zb_info_all"
        static let zEndPriceRank = "z_end_price_rank"
        static let zArrivalFee = "z_arrival_fee"
        static let zAllPrice = "z_all_price"
        static let zClientSideTm = "z_client_side_tm"
        static let zIfArrival = "z_if_arrival"
        static let zAccountTermPrice = "z_account_term_price"
        
        
        
    }
    
    // MARK: Properties
    public var ztbMark: String?
    public var zUnitNm: String?
    public var zPigType: String?
    public var zUse: String?
    public var zAddress: String?
    public var zShipAddress: String?
    public var zBatchNo: String?
    public var zTitle: String?
    public var zCreateTm: String?
    public var zEndDate: String?
    public var zTbNo: String?
    public var zSrcZcNm: String?
    public var zbFile: [ZyaZbFile]?
    public var tbInfo: [ZyaTbInfo]?
    public var bidInfo: [ZyaTbInfo]?
    public var zTenderCompany: String?
    public var zProvince: String?
    public var zCusType: String?
    public var zRecordNo: String?
    public var idKey: String?
    public var ztbFileUrl: String?
    public var zWinCompany: String?
    public var zType: String?
    public var zOrgNm: String?
    public var zTbId: String?
    public var zZbNo: String?
    public var zOrgId: String?
    public var zDate: String?
    public var zZcId: String?
    public var zZcNm: String?
    public var zGoodsNm: String?
    public var zTel: String?
    public var zStaffNm: String?
    public var zContent: String?
    public var zPrice: String?
    public var zZbId: String?
    public var zStaffId: String?
    public var zRecordType: String?
    public var zSrcZcId: String?
    public var zAuditMark: String?
    public var zStatus: String?
    public var zZbStatus:String?
    public var zCity: String?
    public var zMainUrl: String?
    public var zSrcType: String?
    public var zBeginDate: String?
    public var zName: String?
    public var zBatchId: String?
    public var zNum: String?
    public var zRange: String?
    public var zZq: String?
    public var innerType: ZTBInnerType? // 用于区别公用
    public var listType:TBandJPType = .TB// 招标  竞拍
    public var zDeposit: String?
    public var zDepositMoney: Double?
    public var zDtradeType: String?
    public var zMaxBidNo: String?
    public var zRestBidNo: String?
    public var zTbCompany: String?
    public var zZbStaffNm: String?
    public var zZbName: String?
    public var zZbTel: String?
    public var zPriceRank: String?
    public var depositInfo: ZyaDepositInfo?
    public var zZbPrice: Double?
    public var zRecordId: String?
    public var zInvited: String?
    public var zDeptNm: String?
    public var zAutoZb: String?
    public var zZbContent: String?
    public var zZbProvince: String?
    public var zZbCity: String?
    public var zZbAddress: String?
    public var jpInfo: String?
    public var zBidId: String?
    public var sid: String?
    public var zBidCount: String?
    public var followTag:String?
    public var providerNm:String?
    public var zLeastNum: String?
    public var zLeastUnitNm: String?
    public var zAvgWeight:String?
    public var zBidNum: String?
    public var zDateEnd: String?
    public var tag:String?
    public var zMinPrice:String?
    public var zMaxPrice:String?
    public var zRemainTry:String?
    public var zbInfo:String?
    public var sendCity:String?
    public var zGoodsName: String?
    public var zGeneralName:String?
    public var zMainElement:String?
    public var zSpecification:String?
    public var zValuationUnit:String?
    public var zApprovalNum:String?
    public var zExpirationTimes:String?
    public var zManufacturer: String?
    public var zSupplier:String?
    public var zProductInstructions:String?
    public var zContractStateNm:String?
    public var zQuoteStateNm:String?
    public var zButtonState:String?
    public var zMyPrice:String?
    public var zMyPriceRank:String?
    public var zEndPriceRank:String?
    public var zExecuteTm:String?
    public var carInfo = [ZyaCarInfo]()
    public var zRank:String?
    public var zbInfoAll:String?
    public var zClientSideTm:String?
    public var zArrivalFee:String?
    public var zAllPrice:String?
    public var zIfArrival:String?
    public var zAccountTermPrice: String?

    
    // MARK: ObjectMapper Initializers
    /// Map a JSON object to this class using ObjectMapper.
    ///
 
    /// Map a JSON object to this class using ObjectMapper.
    ///
    /// - parameter map: A mapping from ObjectMapper.
    public override func mapping(map: Map) {
        super.mapping(map: map)
        zShipAddress <- map[SerializationKeys.zShipAddress]
        zbInfo <- map[SerializationKeys.zbInfo]
        ztbMark <- (map[SerializationKeys.ztbMark],StringTransform())
        zUnitNm <- map[SerializationKeys.zUnitNm]
        zPigType <- map[SerializationKeys.zPigType]
        zUse <- (map[SerializationKeys.zUse],StringTransform())
        zAddress <- map[SerializationKeys.zAddress]
        zLeastUnitNm <- map[SerializationKeys.zLeastUnitNm]
        zAvgWeight <- map[SerializationKeys.zAvgWeight]
        zEndPriceRank <- map[SerializationKeys.zEndPriceRank]
        zIfArrival <- (map[SerializationKeys.zIfArrival],StringTransform())

        
        zBatchNo <- map[SerializationKeys.zBatchNo]
        zTitle <- map[SerializationKeys.zTitle]
        zCreateTm <- map[SerializationKeys.zCreateTm]
        zRemainTry <- (map[SerializationKeys.zRemainTry],StringTransform())
        
        
       
        zEndDate <- map[SerializationKeys.zEndDate]
        zTbNo <- map[SerializationKeys.zTbNo]
        zSrcZcNm <- map[SerializationKeys.zSrcZcNm]
        zbFile <- map[SerializationKeys.zbFile]
        tbInfo <- map[SerializationKeys.tbInfo]
        bidInfo <- map[SerializationKeys.bidInfo]
        zTenderCompany <- map[SerializationKeys.zTenderCompany]
        zProvince <- map[SerializationKeys.zProvince]
        zCusType <- (map[SerializationKeys.zCusType],StringTransform())
        zRecordNo <- map[SerializationKeys.zRecordNo]
        idKey <- (map[SerializationKeys.idKey],StringTransform())
        ztbFileUrl <- map[SerializationKeys.ztbFileUrl]
        zWinCompany <- map[SerializationKeys.zWinCompany]
        zType <- (map[SerializationKeys.zType],StringTransform())
        zOrgNm <- map[SerializationKeys.zOrgNm]
        zTbId <- map[SerializationKeys.zTbId]
        zZbNo <- map[SerializationKeys.zZbNo]
        zOrgId <- map[SerializationKeys.zOrgId]
        zDate <- map[SerializationKeys.zDate]
        zZcId <- map[SerializationKeys.zZcId]
        zZcNm <- map[SerializationKeys.zZcNm]
        zGoodsNm <- map[SerializationKeys.zGoodsNm]
        zTel <- map[SerializationKeys.zTel]
        zStaffNm <- map[SerializationKeys.zStaffNm]
        zContent <- map[SerializationKeys.zContent]
        zPrice <- (map[SerializationKeys.zPrice],StringTransform_test())
        zZbId <- (map[SerializationKeys.zZbId],StringTransform())
        zStaffId <- (map[SerializationKeys.zStaffId],StringTransform())
        zRecordType <- (map[SerializationKeys.zRecordType],StringTransform())
        zSrcZcId <- map[SerializationKeys.zSrcZcId]
        zAuditMark <- (map[SerializationKeys.zAuditMark],StringTransform())
        zStatus <- (map[SerializationKeys.zStatus],StringTransform())
        zZbStatus <- (map[SerializationKeys.zZbStatus],StringTransform())
        zCity <- map[SerializationKeys.zCity]
        zMainUrl <- map[SerializationKeys.zMainUrl]
        zSrcType <- map[SerializationKeys.zSrcType]
        zBeginDate <- map[SerializationKeys.zBeginDate]
        zName <- map[SerializationKeys.zName]
        zBatchId <- map[SerializationKeys.zBatchId]
        zNum <- (map[SerializationKeys.zNum],StringTransform())
        zRange <- (map[SerializationKeys.zRange],StringTransform())
        zZq <- (map[SerializationKeys.zZq],StringTransform())
        zDepositMoney <- map[SerializationKeys.zDepositMoney]
        zDtradeType <- (map[SerializationKeys.zDtradeType],StringTransform())
        zMaxBidNo <- (map[SerializationKeys.zMaxBidNo],StringTransform())
        zRestBidNo <- (map[SerializationKeys.zRestBidNo],StringTransform())
        zTbCompany <- map[SerializationKeys.zTbCompany]
        zZbStaffNm <- map[SerializationKeys.zZbStaffNm]
        zZbTel <- map[SerializationKeys.zZbTel]
        zZbName <- map[SerializationKeys.zZbName]
        zPriceRank <- map[SerializationKeys.zPriceRank]
        depositInfo <- map[SerializationKeys.depositInfo]
        zZbPrice <- map[SerializationKeys.zZbPrice]
        zRecordId <- (map[SerializationKeys.zRecordId],StringTransform())
        zInvited <- (map[SerializationKeys.zInvited],StringTransform())
        zDeptNm <- map[SerializationKeys.zDeptNm]
        zZbContent <- map[SerializationKeys.zZbContent]
        zAutoZb <- (map[SerializationKeys.zAutoZb],StringTransform())
        
        zZbProvince <- map[SerializationKeys.zZbProvince]
        zZbCity <- map[SerializationKeys.zZbCity]
        zZbAddress <- map[SerializationKeys.zZbAddress]
        jpInfo <- map[SerializationKeys.jpInfo]
        zBidId <- map[SerializationKeys.zBidId]
        zBidCount <- (map[SerializationKeys.zBidCount],StringTransform())
        sid <- map[SerializationKeys.sid]
        
        zLeastNum <- (map[SerializationKeys.zLeastNum],StringTransform())
        zBidNum <- (map[SerializationKeys.zBidNum],StringTransform())
        zDateEnd <- map[SerializationKeys.zDateEnd]
        providerNm <- (map[SerializationKeys.providerNm],StringTransform())
        tag <- (map[SerializationKeys.tag],StringTransform())
        zMinPrice <- (map[SerializationKeys.zMinPrice],StringTransform_test())
        zMaxPrice <- (map[SerializationKeys.zMaxPrice],StringTransform_test())
        
        zArrivalFee <- (map[SerializationKeys.zArrivalFee],StringTransform_test())
        zAllPrice <- (map[SerializationKeys.zAllPrice],StringTransform_test())
        
    

        
        sendCity <- map[SerializationKeys.sendCity]
        zExecuteTm <- map[SerializationKeys.zExecuteTm]
        
        zButtonState <- (map[SerializationKeys.zButtonState],StringTransform())
    
        zbInfoAll <- map[SerializationKeys.zbInfoAll]
        
        zGoodsName <- map[SerializationKeys.zGoodsName]
        zGeneralName <- map[SerializationKeys.zGeneralName]
        
        zMainElement <- map[SerializationKeys.zMainElement]
        zSpecification <- map[SerializationKeys.zSpecification]
        zValuationUnit <- map[SerializationKeys.zValuationUnit]
        zApprovalNum <- map[SerializationKeys.zApprovalNum]
        zExpirationTimes <- (map[SerializationKeys.zExpirationTimes],StringTransform())
        zManufacturer <- map[SerializationKeys.zManufacturer]
        zSupplier <- map[SerializationKeys.zSupplier]
        zProductInstructions <- map[SerializationKeys.zProductInstructions]
        carInfo <- map[SerializationKeys.carInfo]
        zContractStateNm <- map[SerializationKeys.zContractStateNm]
        zQuoteStateNm <- map[SerializationKeys.zQuoteStateNm]
        zRank <- (map[SerializationKeys.zRank],StringTransform())
        zMyPrice <- (map[SerializationKeys.zMyPrice],StringTransform_test())
        zMyPriceRank <- (map[SerializationKeys.zMyPriceRank],StringTransform())
        
        zAccountTermPrice <- (map[SerializationKeys.zAccountTermPrice], StringTransform())
    }
    
    /// Generates description of the object in the form of a NSDictionary.
    ///
    /// - returns: A Key value pair containing all valid values in the object.
    public override func dictionaryRepresentation() -> [String: Any] {
       var  dictionary = super.dictionaryRepresentation()
        
        
        if let value = zIfArrival { dictionary[SerializationKeys.zIfArrival] = value }

        if let value = zAutoZb { dictionary[SerializationKeys.zAutoZb] = value }
        if let value = zZbProvince { dictionary[SerializationKeys.zZbProvince] = value }
        if let value = zZbContent { dictionary[SerializationKeys.zZbContent] = value }
        if let value = zbInfoAll { dictionary[SerializationKeys.zbInfoAll] = value }
        if let value = zAvgWeight { dictionary[SerializationKeys.zAvgWeight] = value }
        if let value = zQuoteStateNm { dictionary[SerializationKeys.zQuoteStateNm] = value }
        if let value = zContractStateNm { dictionary[SerializationKeys.zContractStateNm] = value }
        if let value = zZbCity { dictionary[SerializationKeys.zZbCity] = value }
        if let value = zZbAddress { dictionary[SerializationKeys.zZbAddress] = value }
        if let value = bidInfo { dictionary[SerializationKeys.bidInfo] = value }
        if let value = sendCity { dictionary[SerializationKeys.sendCity] = value }
        if let value = zExecuteTm { dictionary[SerializationKeys.zExecuteTm] = value }
        if let value = zRank { dictionary[SerializationKeys.zRank] = value }
        if let value = zButtonState { dictionary[SerializationKeys.zButtonState] = value }
        if let value = zEndPriceRank { dictionary[SerializationKeys.zEndPriceRank] = value }
        if let value = zArrivalFee { dictionary[SerializationKeys.zArrivalFee] = value }
        if let value = zAllPrice { dictionary[SerializationKeys.zAllPrice] = value }
        if let value = ztbMark { dictionary[SerializationKeys.ztbMark] = value }
        if let value = zUnitNm { dictionary[SerializationKeys.zUnitNm] = value }
        if let value = zPigType { dictionary[SerializationKeys.zPigType] = value }
        if let value = zUse { dictionary[SerializationKeys.zUse] = value }
        if let value = zAddress { dictionary[SerializationKeys.zAddress] = value }
        if let value = zBatchNo { dictionary[SerializationKeys.zBatchNo] = value }
        if let value = zTitle { dictionary[SerializationKeys.zTitle] = value }
        if let value = zCreateTm { dictionary[SerializationKeys.zCreateTm] = value }
        if let value = zEndDate { dictionary[SerializationKeys.zEndDate] = value }
        if let value = zShipAddress { dictionary[SerializationKeys.zShipAddress] = value }
        if let value = zClientSideTm { dictionary[SerializationKeys.zClientSideTm] = value }
        if let value = zbInfo { dictionary[SerializationKeys.zbInfo] = value }
        if let value = zLeastUnitNm { dictionary[SerializationKeys.zLeastUnitNm] = value }
        if let value = zTbNo { dictionary[SerializationKeys.zTbNo] = value }
        if let value = zSrcZcNm { dictionary[SerializationKeys.zSrcZcNm] = value }
        if let value = zbFile { dictionary[SerializationKeys.zbFile] = value.map { $0.dictionaryRepresentation() } }
        if let value = tbInfo { dictionary[SerializationKeys.tbInfo] = value.map { $0.dictionaryRepresentation() } }
        dictionary[SerializationKeys.carInfo] = carInfo.map { $0.dictionaryRepresentation() } 
        if let value = zTenderCompany { dictionary[SerializationKeys.zTenderCompany] = value }
        if let value = zProvince { dictionary[SerializationKeys.zProvince] = value }
        if let value = zCusType { dictionary[SerializationKeys.zCusType] = value }
        if let value = zRecordNo { dictionary[SerializationKeys.zRecordNo] = value }
        if let value = idKey { dictionary[SerializationKeys.idKey] = value }
        if let value = ztbFileUrl { dictionary[SerializationKeys.ztbFileUrl] = value }
        if let value = zWinCompany { dictionary[SerializationKeys.zWinCompany] = value }
        if let value = zType { dictionary[SerializationKeys.zType] = value }
        if let value = zOrgNm { dictionary[SerializationKeys.zOrgNm] = value }
        if let value = zTbId { dictionary[SerializationKeys.zTbId] = value }
        if let value = zZbNo { dictionary[SerializationKeys.zZbNo] = value }
        if let value = zOrgId { dictionary[SerializationKeys.zOrgId] = value }
        if let value = zDate { dictionary[SerializationKeys.zDate] = value }
        if let value = zZcId { dictionary[SerializationKeys.zZcId] = value }
        if let value = zZcNm { dictionary[SerializationKeys.zZcNm] = value }
        if let value = zGoodsNm { dictionary[SerializationKeys.zGoodsNm] = value }
        if let value = zTel { dictionary[SerializationKeys.zTel] = value }
        if let value = zStaffNm { dictionary[SerializationKeys.zStaffNm] = value }
        if let value = zContent { dictionary[SerializationKeys.zContent] = value }
        if let value = zPrice { dictionary[SerializationKeys.zPrice] = value }
        if let value = zZbId { dictionary[SerializationKeys.zZbId] = value }
        if let value = zStaffId { dictionary[SerializationKeys.zStaffId] = value }
        if let value = zRecordType { dictionary[SerializationKeys.zRecordType] = value }
        if let value = zSrcZcId { dictionary[SerializationKeys.zSrcZcId] = value }
        if let value = zAuditMark { dictionary[SerializationKeys.zAuditMark] = value }
        if let value = zStatus { dictionary[SerializationKeys.zStatus] = value }
        if let value = zZbStatus { dictionary[SerializationKeys.zZbStatus] = value }
        if let value = zCity { dictionary[SerializationKeys.zCity] = value }
        if let value = zMainUrl { dictionary[SerializationKeys.zMainUrl] = value }
        if let value = zSrcType { dictionary[SerializationKeys.zSrcType] = value }
        if let value = zBeginDate { dictionary[SerializationKeys.zBeginDate] = value }
        if let value = zName { dictionary[SerializationKeys.zName] = value }
        if let value = zBatchId { dictionary[SerializationKeys.zBatchId] = value }
        if let value = zNum { dictionary[SerializationKeys.zNum] = value }
        if let value = zRange { dictionary[SerializationKeys.zRange] = value }
        if let value = zZq { dictionary[SerializationKeys.zZq] = value }
        if let value = zDepositMoney { dictionary[SerializationKeys.zDepositMoney] = value }
        if let value = zDtradeType { dictionary[SerializationKeys.zDtradeType] = value }
        if let value = zMaxBidNo { dictionary[SerializationKeys.zMaxBidNo] = value }
        if let value = zRestBidNo { dictionary[SerializationKeys.zRestBidNo] = value }
        if let value = zTbCompany { dictionary[SerializationKeys.zTbCompany] = value }
        if let value = zZbStaffNm { dictionary[SerializationKeys.zZbStaffNm] = value }
        if let value = zZbTel { dictionary[SerializationKeys.zZbTel] = value }
        if let value = zZbName { dictionary[SerializationKeys.zZbName] = value }
        if let value = zPriceRank { dictionary[SerializationKeys.zPriceRank] = value }
        if let value = depositInfo { dictionary[SerializationKeys.depositInfo] = value.dictionaryRepresentation() }
        if let value = zZbPrice { dictionary[SerializationKeys.zZbPrice] = value }
        if let value = zRecordId { dictionary[SerializationKeys.zRecordId] = value }
        if let value = zInvited { dictionary[SerializationKeys.zInvited] = value }
        if let value = zDeptNm { dictionary[SerializationKeys.zDeptNm] = value }
        if let value = jpInfo { dictionary[SerializationKeys.jpInfo] = value }
        if let value = zBidId { dictionary[SerializationKeys.zBidId] = value }
        if let value = zBidCount { dictionary[SerializationKeys.zBidCount] = value }
        if let value = zBidNum { dictionary[SerializationKeys.zBidNum] = doubleTran(value).cleanZero}
        if let value = zLeastNum { dictionary[SerializationKeys.zLeastNum] = value }
        if let value = zDateEnd { dictionary[SerializationKeys.zDateEnd] = value }
        if let value = zMinPrice { dictionary[SerializationKeys.zMinPrice] = value }
        if let value = zMaxPrice { dictionary[SerializationKeys.zMaxPrice] = value }
        if let value = zGoodsName { dictionary[SerializationKeys.zGoodsName] = value }
        if let value = zGeneralName { dictionary[SerializationKeys.zGeneralName] = value }
        if let value = zMainElement { dictionary[SerializationKeys.zMainElement] = value }
        if let value = zSpecification { dictionary[SerializationKeys.zSpecification] = value }
        if let value = zValuationUnit { dictionary[SerializationKeys.zValuationUnit] = value }
        if let value = zApprovalNum { dictionary[SerializationKeys.zApprovalNum] = value }
        if let value = zExpirationTimes { dictionary[SerializationKeys.zExpirationTimes] = value }
        if let value = zManufacturer { dictionary[SerializationKeys.zManufacturer] = value }
        if let value = zSupplier { dictionary[SerializationKeys.zSupplier] = value }
        if let value = zProductInstructions { dictionary[SerializationKeys.zProductInstructions] = value }
        if let value = zMyPrice { dictionary[SerializationKeys.zMyPrice] = value }
        if let value = zMyPriceRank { dictionary[SerializationKeys.zMyPriceRank] = value }
        if let value = zAccountTermPrice { dictionary[SerializationKeys.zAccountTermPrice] = value }
        
        return dictionary
    }
  
}

